<?php

namespace App\Http\Controllers\Index;

use App\User;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Auth;
class LoginController extends Controller
{
    /**
     * 加载登录模板方法
     */
    public function loginForm(){

        return view('index.login.login');
    }

    /**
     * 处理登录方法
     */
    public function login(Request $request){
        //用户认证的Auth类能够帮助我们快速完成登录判断操作
        $status = Auth::attempt([
            'email' => $request->input('email'),
            'password' => $request->input('password'),
        ]);
        //判断,当为真的时候,代表登录成功,为假的时候,代表登录失败
        if ($status){
            //判断当前账号状态是否已激活,如果没有激活,提示他不能登录,请去邮箱激活账号,如果激活了,就直接登录
            $user=User::where('email','=',$request->input('email'))->first();
            if (!$user['status']){
                session()->flash('danger','该账号尚未激活，请去邮箱激活账号');
                return redirect()->route('login');
            }
            //设置成功闪存信息并返回
            session()->flash('success','登录成功');
            return redirect()->route('home');
        }
        //设置错误闪存信息并返回
        session()->flash('danger','登录失败,邮箱或密码错误!');
        return redirect()->route('login');
    }

    /**
     * 退出登录方法
     */
    public function logout(){
        //处理退出登录
        Auth::logout();
        //设置闪存信息并返回
        session()->flash('success','退出成功');
        return redirect()->route('home');
    }
}
